package snakegame;

import java.awt.Color;
import javax.swing.JPanel;
import javax.swing.border.LineBorder;

/**
 *
 * @author frankkie
 */
public class Vakje extends JPanel {

  //Wat is dit voor vakje
  public int wat = NOG_NIKS;
  public int bodyTimer = -1;

  //
  public static final int NOG_NIKS = -1;
  public static final int GEWOON = 0;
  public static final int ETEN = 1;
  public static final int MUUR = 2;
  public static final int HOOFD = 3;
  public static final int BODY = 4;
  public static final int STAART = 5;
  //
  public static Color cNogNiks = Color.ORANGE;
  public static Color cGewoon = Color.WHITE;
  public static Color cEten = Color.PINK;
  public static Color cMuur = Color.BLACK;
  public static Color cHoofd = Color.YELLOW;
  public static Color cBody  = new Color(0,255,0);
  public static Color cStaart = cBody;

  /* Staart bugt een beetje als je net hebt gegeten
   * dus staart krijgt dezelfde kleur als body
   * dan merkt je t niet
   */

  public Vakje(){
    //Constructor
    this.setBorder(new LineBorder(Color.GRAY));
    zetKleur();
  }

  public int getWat(){
    return wat;
  }
  
  public void setWat(int a){
    int vroeger = wat;
    wat = a;
    zetKleur();
    if (Main.debug){
      Main.drukaf("Vakje.setWat -> 'wat' was eerst: " + vroeger + " is nu:" + wat);
    }
  }

  public int getBodyTimer(){
    return bodyTimer;
  }

  public void setBodyTimer(int a){
    int vroeger = bodyTimer;
    bodyTimer = a;

    if (Main.debug){
      Main.drukaf("Vakje.setBodyTimer -> 'bodyTimer' was eerst: " + vroeger + " is nu:" + bodyTimer);
    }
  }

  public void bodyTimerMin(){
    int vroeger = bodyTimer;
    bodyTimer--;
    if (Main.debug){
      Main.drukaf("Vakje.bodyTimerMin -> 'bodyTimer' was eerst: " + vroeger + " is nu:" + bodyTimer);
    }
  }

  public void zetKleur(){
    
    switch(wat){
      case NOG_NIKS: {
        this.setBackground(cNogNiks);
        break;
      }
      case GEWOON: {
        this.setBackground(cGewoon);
        break;
      }
      case ETEN: {
        this.setBackground(cEten);
        break;
      }
      case MUUR: {
        this.setBackground(cMuur);
        break;
      }
      case HOOFD:{
        this.setBackground(cHoofd);
        break;
      }
      case BODY: {
        this.setBackground(cBody);
        break;
      }
      case STAART: {
        this.setBackground(cStaart);
        break;
      }
    }

    
  }

}
